<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">

<link href="css/redmond/jquery-ui-1.10.3.custom.min.css" rel="stylesheet" type="text/css">	<!-- jquery UI CSS -->
<link href="css/selfTemplate.css" rel="stylesheet" type="text/css">							<!-- homemade CSS -->

<script src="js/jquery-2.1.0.min.js" type="text/javascript"></script>						<!-- jquery -->
<script src="js/jquery-ui-1.10.3.custom.js" type="text/javascript"></script>				<!-- jquery UI -->
<script src="js/jquery.cookie.js" type="text/javascript"></script>							<!-- cookie -->
<script src="js/widgets.js" type="text/javascript"></script>								<!-- homemade js -->

<script type="text/javascript">

function btnUpdate(quartzJobId,quartzJobTypeId,cronString,quartzId) {
	$("#quartzJobTypeId").val(quartzJobTypeId);
	$("#cronStr").val(cronString);
	cronInit("update",quartzJobId);
}

function queryJobBySubsys(){
	clearErrorMsg();
	$.ajax({type:"post",url:"QueryExistingJob",dataType: "json",
		data : { subsysId:$("select#subsysId option:selected").val() },
		success : function(reses) {
			$("#tbodyCron tr").remove();
			if ( reses.length >0 ) {
				$.each(reses,function(i, res) {
					var tmp = "<tr><td class='center'><button type='button' onclick='btnUpdate("+res.i1+","+res.i2+",\""+res.s2+"\",\""+res.l1+"\")'>編輯</button></td><td class='int'>"+(i+1)+"</td><td class='zhTwN'>"+res.s1+"</td><td class='engN'>"+res.l1+"</td><td class='engN'>"+res.s2+"</td><td class='zhTwN'>"+res.s3+"</td><td class='engN'>"+res.s4+"</td></tr>";
					$("#tbodyCron").append(tmp);
				});
				refreshUI(1,"tbodyCron",false);
			} else {
				$("#errShortMsg").html("此系統下目前無暨有排程");
			}
		},error : function(xhr, ajaxOptions, thrownError) { errorAjx(xhr); }
	});
}

function cronInit(type,quartzJobId) {
	$.ajax({type:"post",url:"QuerySubsys4Maintain",dataType:"json",async:false,
		data: {subsysId:$("select#subsysId option:selected").val()},
		success : function(res) {
			if ( res.length > 0 ) {
				$("#svnUrl").val( res[0]).prop("size",$("#svnUrl").val().length*0.8);
			} else {
				$("#msgCron").html("尚未為此系統設定SVN");
			}
		},error : function(xhr, ajaxOptions, thrownError) { errorAjx(xhr); }
	});
	
	var originalQuartzJobId = 0;
	var url = "ApplyQuartzChkIn";
	if( type=="update" ) {
		url = "ApplyUpdateQuartzChkIn";
		originalQuartzJobId = quartzJobId;
	}
	
	$("#cronSet").css("visibility", "visible").dialog({
		resizable:true,width:400,modal:true,show:"fold",hide:"fold",
		buttons : {
			"確定" : function() {
				var chkInRecord={
					"subsysDesc":getLeftPar( $("select#subsysId option:selected").html() ),				//子系統
					"applier":$.cookie("empId"),
				}
		
				chkInRecord = JSON.stringify(chkInRecord);
		
				$.ajax({type:"post",url:url,dataType:"json",async:false,
					data:{ svnIP:$("#svnUrl").val(),svnPath:$("#svnPath").val(),cronString:$("#cronStr").val(),
						originalQuartzJobId:originalQuartzJobId,
						subsysId:$("select#subsysId option:selected").val(),subsysDesc:getLeftPar( $("select#subsysId option:selected").html() ),
						empId:$.cookie("empId"),empName:$.cookie("empName"),quartzJobTypeId:$("select#quartzJobTypeId option:selected").val() },
					success : function(res) {
						windowUnfreeze();
						if (res.isSuccess) {
							alert("完成");
						} else { 
							errorMsgShow(res.shortErrorMessage);
						}
					},error : function(xhr, ajaxOptions, thrownError) { windowUnfreeze(); errorAjx(xhr); }
				});
			
				$(this).dialog("close");
			},"關閉" :function() {
				$(this).dialog("close");
			}
		}
	});
}

$(document).ready(function() {	
    var pageName = "cronMgt.html";
	init(pageName);
	querySubsys($.cookie("empId"), pageName, "subsysId",$.cookie("localSystemId") );
	
	queryJobBySubsys();
	
	$.ajax({type:"post",url:"QueryJobType",dataType: "json",
		success : function(reses) {
			$("#quartzJobTypeId option").remove();
			$.each(reses, function(i,res){
				var tmp = "<option value='"+res.i1+"'>"+res.s1+"</option>";
				$("select#quartzJobTypeId").append(tmp);	
			});
		},error : function(xhr, ajaxOptions, thrownError) { errorAjx(xhr); }
	});
	
	
	
	$("select#subsysId").bind("change",function(){
		queryJobBySubsys();
	});
	
	$("#btnAdd").bind("click", function() {
		$("#cronStr").val(null);
		$("#msgCron").html(null);
		$("#svnUrl").val(null);
				
		cronInit("add",0);
	});
	
	$("#cronStr").tooltip({
      content: function(callback) {
        callback($(this).prop('title').replace('|', '<br>')); 
      }
    });
	$("button").button();
});


</script>

</head>
<body>
	<div id="header"></div>
	<p>
	<table id="parTable">
		<thead class="tableFirst">
			<tr><th class="right zhTwN">系統：</th><td class="left"><select id="subsysId"></select></td></tr>
		</thead>
	</table>
	<p>
	
	<table id="tableCron">
		<thead class="tableFirst">
			<tr><td class="center"><button type="button" id="btnAdd">新增</button></td><th>#</th><th>類型</th><th>ID</th><th>排程公式</th><th>創建人員</th><th>創建日期</th></tr>
		</thead>
		<tbody id="tbodyCron"></tbody>	
	</table>
</body>

<div class="dialog" id="cronSet">
	<table id="tableCronSet">
		<thead class="tableFirst">
			<tr><td id="msgCron" class="left zhTwN alert" colspan="2"></td></tr>
			<tr><td class="right zhTwN">工作類型：</td><td class="left"><select id="quartzJobTypeId"></select></td></tr>
			<tr><td class="right engN">cron：</td><td class="left"><input id="cronStr" title="1-30 * * * * ?  在1-30中的每秒執行  <br>
* * * * * ?  每秒執行	<br>
5/20 * * * * ?  從第5秒開始執行後，每過20秒執行一次（一分鐘內）。分別在5，25，45秒執行	<br>
50 19 * * * ?  每個小時的第19分鐘50秒執行	<br>
0 0/10 * * * ?  每10分鐘執行一次	<br>
0 30 0/1 * * ?  每小時的第30分鐘執行	<br>
0 38 15 * * ?  每日的15:38分鐘執行	<br>
0 45 15 ? * MON-FRI  每週週一至週五的15:45分執行	<br>
0 47 15 ? * FRI  每週五的15:47分執行	<br>
0 50 15 ? * 6,7  每週的週五和週六的15:47分執行	<br>
0 31 16 6 6 ? *  //每年的6月6號的16:31分執行	<br>
0 33 16 6 * ?  //每月的6號16:33分執行	<br>
0 33 16 6 1,8 ?  //每年第1月、8月 6號16:33執行	<br>"/></td></tr>
		</thead>
		<tbody id="tbodyCronSet">
			<tr><td colspan="2">&nbsp;</td></tr>
			<tr><td class="right">SVN：</td><td><input readonly id="svnUrl"/></td></tr>
			<tr><td class="right">路徑：</td><td><input readonly value="trunk" size=3 id="svnPath"/></td></tr>
			<tr><td class="right">說明：</td><td class="left"><textarea id="comment" rows="4" cols="20"></textarea></td></tr>
		</tbody>	
	</table>
</div>
</html>